COMPX201-21A (HAM)
Data Structures and Algorithms
15 Points
Staff
Convenor(s)
Tony Smith
4453
G.2.26A
tony.smith@waikato.ac.nz
|
Lecturer(s)
Colin Pilbrow
9584
G.1.29
colin.pilbrow@waikato.ac.nz
|
Administrator(s)
Librarian(s)
You can contact staff by:
- Calling +64 7 838 4466 select option 1, then enter the extension.
-
Extensions starting with 4, 5, 9 or 3 can also be direct dialled:
- For extensions starting with 4: dial +64 7 838 extension.
- For extensions starting with 5: dial +64 7 858 extension.
- For extensions starting with 9: dial +64 7 837 extension.
- For extensions starting with 3: dial +64 7 2620 + the last 3 digits of the extension e.g. 3123 = +64 7 262 0123.
Paper Description
An introduction to abstract data types and dynamic data structures, with an introduction to the theory and practice of testing. This paper assumes familiarity with basic object-oriented programming as introduced within COMPX101 and COMPX102 (COMP103 and COMP104 prior to 2017), and introduces programming with data structures using Java and the use of testing as a key concept in software development. Students learn how to program in Java and become familiar with the design, analysis, and application of commonly used data structures, including sets, lists, stacks, queues, trees, and hash-tables.
Paper Structure
Learning Outcomes
Students who successfully complete the paper should be able to:
Assessment
Assessment items are as follows:
- Four programming assignments @ 15% each
- Two tests @ 20% each
Assessment Components
The internal assessment/exam ratio (as stated in the University Calendar) is 100:0. There is no final exam.
Required and Recommended Readings
Required Readings
Recommended Readings
Just about any textbook or online resource covering data structures using Java will be helpful.
The following textbook was previously required for this course, and is now highly recommended:
Data Structures & Problem Solving Using Java (4th Ed.), Mark Allen Weiss, Pearson Education (Addison-Wesley) 2010.
Online Support
Workload
This is a fifteen point course, and the expected workload for the semester is 150 hours accordingly.
In addition to working on assignments, students should endeavour to practice programming every day to reinforce what is taught during lectures. The best way to learn the material in this course is by coding, coding, coding!
Linkages to Other Papers
Prerequisite(s)
Prerequisite papers: COMPX102
Restriction(s)
Restricted papers: COMPX241